//**************************************************************
//		Controller.h
//			AppHider
//
//	Copyright (c) 2008 Metta Media
//
//	Permission is hereby granted, free of charge, to any person obtaining a copy
//	of this software and associated documentation files (the "Software"), to deal
//	in the Software without restriction, including without limitation the rights
//	to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
//	copies of the Software, and to permit persons to whom the Software is
//	furnished to do so, subject to the following conditions:
//
//	The above copyright notice and this permission notice shall be included in
//	all copies or substantial portions of the Software.
//
//	THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
//	IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
//	FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
//	AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
//	LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
//	OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
//	THE SOFTWARE.
//**************************************************************

#import <Cocoa/Cocoa.h>
#import "ApplicationMenu.h"
#import "MABSupportFolder.h"

typedef struct _RGBAPixel
	{
		unsigned char redByte, greenByte, blueByte, alphaByte;	
	} RGBAPixel;

@interface Controller : NSObject {
	NSUserDefaults * defaults;
	MABSupportFolder * supportFolder;
	NSMutableArray * appOrder;
	NSString * appDir;
	NSMutableArray * statusItems;
	NSMutableDictionary * statusItemDict;
	BOOL exportedApp;
	//NSDistributedNotificationCenter * notification;
	
	/* //Applescripts
		NSString * source;
		NSAppleScript * theScript;
		NSDictionary * errorDict;
		NSAppleEventDescriptor * returnDescriptor;
		BOOL error;
		NSString * errorMessage;
		NSString * key; */
}
-(void)launchStatusItems;
-(void)releaseStatusItems;
-(NSMenu*)buildMenu:(NSArray*)arr;
-(void)click:(id)sender;
-(void)runApplescript:(NSString*)inputScript;
-(void)runKeystoke:(NSString*)inputKey withPreferences:(NSDictionary*)prefs inApp:(NSString*)app;
-(void)showAbout;
-(void)showSite;
- (NSImage *)invertImage: (NSImage *)image;

@end